Core
instance with a specific Name
and ProjectId
. You may optionally specify other CoreOption
values, such as RelayUrl
and Storage
Metadata
object which describes your Wallet. This includes a Name
, Description
, Url
and Icons
url.
Core
and Metadata
objects, you can initialize the WalletKitClient
Namespaces
mapping is required when approving a proposed session from a dApp. Because of this, you may
also construct a Namespaces
from a RequiredNamespaces
, which auto-populates all Methods
, Events
and
Chains
from the given RequiredNamespaces
. This is provided for convenience.
RequiredNamespaces
is required when setting up a session between a dApp and Wallet. The
dApp will provide a RequiredNamespaces
when proposing the session. The RequiredNamespaces
and
ProposedNamespace
use the same style constructors + builder functions as Namespaces
and Namespace
.
Namespaces
. The approved
Namespaces
should include the RequiredNamespaces
under proposal.RequiredNamespaces
, and may optionally include any optional namespaces
specified under proposal.OptionalNamespaces
Namespaces
for you. This function will not approve optional namespaces
params
field type in the custom session request. C# is a static typed language, so these types must be given whenever you do a session request (or do any querying for session requests).
Currently, WalletKit does not automatically assume the object type for params
is an array. This is very important, since most EVM RPC requests have params
as an array type. Use List<T>
to workaround this. For example, for eth_sendTransaction
, use List<Transaction>
instead of Transaction
.
Newtonsoft.Json is used for JSON serialization/deserialization, therefore you can use Newtonsoft.Json attributes when defining fields in your request/response classes.
eth_getTransactionReceipt
The params
field for eth_getTransactionReceipt
has the object type
RpcMethod
class attributes defines the rpc method this response uses, this is optional. The RpcResponseOptions
class attributes define the expiry time and tag attached to the response, this is required.
eth_getTransactionReceipt
is the following:
eth_getTransactionReceipt
session request by doing the following:
eth_getTransactionReceipt
request from a connected dApp. You may optionally filter further which requests are handled using the FilterRequests
function
Task
, so the callback can be made async. To return a response, you must set the Response
field in RequestEventArgs<T, TR>
with the desired response.
Disconnect
function. You may optional provide a reason for the disconnect.
Disconnecting requires the topic
of the session to be given. This can be found in the SessionStruct
object given when a session has been given approval by the Wallet.